<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Tab 切换</title>
</head>

<body>
    <!--
         https://blog.csdn.net/jvid_sky/article/details/53260616

         原理：通过label标签的关联属性和input的单选类型实现相应div的显示

1.创建一个类名为wrap的div当作容器

2.创建四个label标签，这将作为tab切换项

3.在每一个label中创建一个span标签（导航内容），input标签（实现选中于取消选中）type类型为radio，还要创建一个div作为这个导航项被点中是显示内容框，

这里要注意的是input标签的name必须是相同的，我这边取名叫tab
————————————————
版权声明：本文为CSDN博主「遨游苍穹_」的原创文章，遵循CC 4.0 BY-SA版权协议，转载请附上原文出处链接及本声明。
原文链接：https://blog.csdn.net/jvid_sky/article/details/53260616
    -->
    <div class="wrap">
        <label>
            <span>home</span>
            <input type="radio" name="tab" checked>
            <div>home-page</div>
        </label>
        <label>
            <span>list</span>
            <input type="radio" name="tab">
            <div>list-page</div>
        </label>
        <label>
            <span>news</span>
            <input type="radio" name="tab">
            <div>news-page</div>
        </label>
        <label>
            <span>mine</span>
            <input type="radio" name="tab">
            <div>mine-page</div>
        </label>
    </div>
    <!--
        通过将input的width设为0使得input的那个小圆点不现实，又通过label的关联用导航项的点击实现input的checked，然后通过input:checked+div{display:block}实现相应div的显示

      
作者：前端王睿
链接：https://www.jianshu.com/p/cc0ac7845ded
来源：简书
著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。
    -->
    <style type="text/css">
        * {
            margin: 0;
            padding: 0;
        }

        .wrap {
            margin: 20px auto;
            width: 403px;
            height: 600px;
            border: 1px solid brown;
            position: relative;
        }

        label {
            width: 100px;
            height: 30px;
            float: left;
            text-align: center;
            line-height: 30px;
            border-right: 1px solid brown;
            border-bottom: 1px solid brown;
        }

        label:nth-of-type(4) {
            border-right: none;
        }

        label span {
            cursor: pointer;
        }

        label div {
            width: 403px;
            height: 568px;
            position: absolute;
            left: 0;
            top: 31px;
            background: #eeeeee;
            display: none;
        }

        label input {
            width: 0;
        }

        input:checked+div {
            display: block;
        }
    </style>
</body>

</html>